// pages/thingList/thingList.js
Page({

  /**
   * 页面的初始数据
   */
  data: {
    index:0
  },
  gotoHall(){
    wx.switchTab({
      url:"../../pages/hall/hall"
    }) 
  },
  index() {
    if (this.data.index == 0) {
      this.setData({
        index: 1
      })
    } else {
      this.setData({
        index: 0
      })
    }
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {
    wx.showLoading({
      title: '数据加载中...',
    });
    var that = this;
    this.setData({
      openid: wx.getStorageSync('openId').result.userInfo.openId
    });
    var arr = []; //暂存图片base64编码
    //提取用户发布的物品信息
    const db = wx.cloud.database({ // 链接数据表
      env: "env-5grgvkci98ec7b3a"
    });
    db.collection('loseThing').where({ //数据查询
      _openid: this.data.openid //条件
    }).get({
      success: function (res) {
        // res.data 包含该记录的数据
        for (let i = 0; i < res.data.length; i++) {
          arr.push(res.data[i])
        }
        that.setData({
          list: arr
        })
      }
    });
    //提取我的寻物信息
    let arr1 = [];
    db.collection('seekThing').where({
      _openid:this.data.openid
    }).get({
      success:function(res){
        for(let i = 0;i < res.data.length;i++){
          arr1.push(res.data[i])
        }
        that.setData({
          list1:arr1
        })
        wx.hideLoading()
      }
    })
  },
  //需修改认领状态
  update(e){
    const db = wx.cloud.database({
      env: "env-5grgvkci98ec7b3a"
    });
    if(this.data.list[e.currentTarget.dataset.index].upshot == "认领中"){
      db.collection('loseThing').where({
        _id:this.data.list[e.currentTarget.dataset.index]._id
      }).update({
        data:{
          upshot:"已认领"
        }
      }).then(res=>{
        wx.showToast({
          title: "修改成功", // 提示的内容
          icon: "none", // 图标，默认success
          image: "", // 自定义图标的本地路径，image 的优先级高于 icon
          duration: 3000, // 提示的延迟时间，默认1500
          mask: false, // 是否显示透明蒙层，防止触摸穿透
        })
        this.onLoad();
      }).catch(err=>{
        wx.showToast({
          title: "修改失败，请重试或者反馈管理员", // 提示的内容
          icon: "none", // 图标，默认success
          image: "", // 自定义图标的本地路径，image 的优先级高于 icon
          duration: 3000, // 提示的延迟时间，默认1500
          mask: false, // 是否显示透明蒙层，防止触摸穿透
        })
      })
    }else{
      db.collection('loseThing').where({
        _id:this.data.list[e.currentTarget.dataset.index]._id
      }).update({
        data:{
          upshot:"认领中"
        }
      }).then(res=>{
        wx.showToast({
          title: "修改成功", // 提示的内容
          icon: "none", // 图标，默认success
          image: "", // 自定义图标的本地路径，image 的优先级高于 icon
          duration: 3000, // 提示的延迟时间，默认1500
          mask: false, // 是否显示透明蒙层，防止触摸穿透
        })
        this.onLoad();
      }).catch(err=>{
        wx.showToast({
          title: "修改失败，请重试或者反馈管理员", // 提示的内容
          icon: "none", // 图标，默认success
          image: "", // 自定义图标的本地路径，image 的优先级高于 icon
          duration: 3000, // 提示的延迟时间，默认1500
          mask: false, // 是否显示透明蒙层，防止触摸穿透
        })
      })
    }
  },
  //修改丢失状态
  update1(e) { //我的寻物中，修改丢失/寻回状态的按钮点击触发事件
    if(this.data.list1[e.currentTarget.dataset.index].upshot == "丢失"){
      const db = wx.cloud.database({ // 链接数据表
        env: "env-5grgvkci98ec7b3a"
      });
      db.collection('seekThing')
        //先查询
        .where({
          _id: this.data.list1[e.currentTarget.dataset.index]._id
        }).
      //在修改
      update({
          //需要修改的对象
          data: {
            // 需要修改对象得key,value值
            upshot: "寻回"
          }
        })
        //成功时执行
        .then(res => {
          wx.showToast({
            title: "修改成功", // 提示的内容
            icon: "none", // 图标，默认success
            image: "", // 自定义图标的本地路径，image 的优先级高于 icon
            duration: 3000, // 提示的延迟时间，默认1500
            mask: false, // 是否显示透明蒙层，防止触摸穿透
          })
          this.onLoad();
        })
        //错误时执行
        .catch(err => {
          wx.showToast({
            title: "修改失败，请重试或者反馈管理员", // 提示的内容
            icon: "none", // 图标，默认success
            image: "", // 自定义图标的本地路径，image 的优先级高于 icon
            duration: 3000, // 提示的延迟时间，默认1500
            mask: false, // 是否显示透明蒙层，防止触摸穿透
          })
        })
    }else{
      const db = wx.cloud.database({ // 链接数据表
        env: "env-5grgvkci98ec7b3a"
      });
      db.collection('seekThing')
        //先查询
        .where({
          _id: this.data.list1[e.currentTarget.dataset.index]._id
        }).
      //在修改
      update({
          //需要修改的对象
          data: {
            // 需要修改对象得key,value值
            upshot: "丢失"
          }
        })
        //成功时执行
        .then(res => {
          wx.showToast({
            title: "修改成功", // 提示的内容
            icon: "none", // 图标，默认success
            image: "", // 自定义图标的本地路径，image 的优先级高于 icon
            duration: 3000, // 提示的延迟时间，默认1500
            mask: false, // 是否显示透明蒙层，防止触摸穿透
          })
          this.onLoad();
        })
        //错误时执行
        .catch(err => {
          wx.showToast({
            title: "修改失败，请重试或者反馈管理员", // 提示的内容
            icon: "none", // 图标，默认success
            image: "", // 自定义图标的本地路径，image 的优先级高于 icon
            duration: 3000, // 提示的延迟时间，默认1500
            mask: false, // 是否显示透明蒙层，防止触摸穿透
          })
        })
    }
  },
  //删除
  delete(e){
    let that = this
    wx.showModal({
      title:"确定删除",
      content:"是否删除该任务？",
      showCancel:true,
      cancelColor: '#000000',
      confirmText:"删除",
      confirmColor:"#576B95",
      success(res){
        if(res.confirm){
          wx.showLoading({
            title: '数据加载中...',
          });
          const db = wx.cloud.database({
            env: "env-5grgvkci98ec7b3a"
          });
          db.collection('loseThing').where({
            _id: that.data.list[e.currentTarget.dataset.index]._id
          }).remove().then(res=>{
            wx.hideLoading();
            wx.showToast({
              title: '删除成功',
              icon:"none",
              image:"",
              duration:2000,
              mask:false
            })
            that.onLoad();
           
          }).catch(err=>{
            wx.showLoading();
            wx.showToast({
              title: '删除失败',
              icon: "none", // 图标，默认success
              image: "", // 自定义图标的本地路径，image 的优先级高于 icon
              duration: 2000, // 提示的延迟时间，默认1500
              mask: false, // 是否显示透明蒙层，防止触摸穿透
            })
          })
        }
      }
    })
  },

  delete1(e) {
    var that = this;
    wx.showModal({
      title: "确认删除", // 提示的标题
      content: "是否删除该发布任务？", // 提示的内容
      showCancel: true, // 是否显示取消按钮，默认true
      cancelColor: "#000000", // 取消按钮的文字颜色，必须是16进制格式的颜色字符串
      confirmText: "删除", // 确认按钮的文字，最多4个字符
      confirmColor: "#576B95", // 确认按钮的文字颜色，必须是 16 进制格式的颜色字符串
      success(res) {
        if (res.confirm) {
          wx.showLoading({
            title: '数据加载中...',
          });
          const db = wx.cloud.database({ // 链接数据表
            env: "env-5grgvkci98ec7b3a"
          });
          db.collection('seekThing').where({
            _id: that.data.list1[e.currentTarget.dataset.index]._id
          }).remove().then(res => {
            wx.hideLoading(); //隐藏正在加载中
            wx.showToast({
              title: "删除成功", // 提示的内容
              icon: "none", // 图标，默认success
              image: "", // 自定义图标的本地路径，image 的优先级高于 icon
              duration: 2000, // 提示的延迟时间，默认1500
              mask: false, // 是否显示透明蒙层，防止触摸穿透
            })
            that.onLoad();
           
          }).catch(err => {
            wx.hideLoading(); //隐藏正在加载中
            wx.showToast({
              title: "删除失败", // 提示的内容
              icon: "none", // 图标，默认success
              image: "", // 自定义图标的本地路径，image 的优先级高于 icon
              duration: 2000, // 提示的延迟时间，默认1500
              mask: false, // 是否显示透明蒙层，防止触摸穿透
            })
          })
        }
      }
    })
  },


  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})